﻿using MovingChame.Web.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MovingChame.Web.Infrastructure
{
    interface IScheduleProvider
    {
        int AddSchedule(int locationId, int tourId, DateTime startTime, DateTime endTime, short dateOrder);

        Boolean UpdateSchedule(int scheduleId, Schedule updatedSchedule);

        Boolean UpdateSchedules(List<Schedule> updatedSchedules);

        Boolean RemoveSchedule(int scheduleId);

        Boolean RemoveSchedules(List<int> scheduleIds);

        Boolean DeleteWholeScheduledTour(int tourId);

        IQueryable<Schedule> GetScheduleByTour(int tourId);

        Schedule GetScheduleById(int scheduleId);
    }
}
